/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package controlacciones.ejb3.entity;

import java.io.Serializable;
import java.util.Date;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.OneToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 *
 * @author vanessa
 */
@Entity
@Table(name = "tb_resultado")
@NamedQueries({
    @NamedQuery(name = "TbResultado.findAll", query = "SELECT t FROM TbResultado t"),
    @NamedQuery(name = "TbResultado.findByIdAccion", query = "SELECT t FROM TbResultado t WHERE t.idAccion = :idAccion"),
    @NamedQuery(name = "TbResultado.findByFechaRecepcion", query = "SELECT t FROM TbResultado t WHERE t.fechaRecepcion = :fechaRecepcion"),
    @NamedQuery(name = "TbResultado.findByCodOpe1", query = "SELECT t FROM TbResultado t WHERE t.codOpe1 = :codOpe1"),
    @NamedQuery(name = "TbResultado.findByCodOpe2", query = "SELECT t FROM TbResultado t WHERE t.codOpe2 = :codOpe2"),
    @NamedQuery(name = "TbResultado.findByCodSupervisor", query = "SELECT t FROM TbResultado t WHERE t.codSupervisor = :codSupervisor"),
    @NamedQuery(name = "TbResultado.findByLecturaMedidor", query = "SELECT t FROM TbResultado t WHERE t.lecturaMedidor = :lecturaMedidor"),
    @NamedQuery(name = "TbResultado.findByFechaEjecucion", query = "SELECT t FROM TbResultado t WHERE t.fechaEjecucion = :fechaEjecucion"),
    @NamedQuery(name = "TbResultado.findByObservacionResultado", query = "SELECT t FROM TbResultado t WHERE t.observacionResultado = :observacionResultado"),
    @NamedQuery(name = "TbResultado.findByCodTipoAccion", query = "SELECT t FROM TbResultado t WHERE t.codTipoAccion = :codTipoAccion"),
    @NamedQuery(name = "TbResultado.findByCodArea", query = "SELECT t FROM TbResultado t WHERE t.codArea = :codArea"),
    @NamedQuery(name = "TbResultado.findByLogUser", query = "SELECT t FROM TbResultado t WHERE t.logUser = :logUser"),
    @NamedQuery(name = "TbResultado.findByNroPapeleta", query = "SELECT t FROM TbResultado t WHERE t.nroPapeleta = :nroPapeleta"),
    @NamedQuery(name = "TbResultado.findBySerieM", query = "SELECT t FROM TbResultado t WHERE t.serieM = :serieM"),
    @NamedQuery(name = "TbResultado.findByMarcaM", query = "SELECT t FROM TbResultado t WHERE t.marcaM = :marcaM"),
    @NamedQuery(name = "TbResultado.findByDiamM", query = "SELECT t FROM TbResultado t WHERE t.diamM = :diamM"),
    @NamedQuery(name = "TbResultado.findByNumM", query = "SELECT t FROM TbResultado t WHERE t.numM = :numM")})
public class TbResultado implements Serializable {
    private static final long serialVersionUID = 1L;
    @Id
    @Basic(optional = false)
    @Column(name = "id_accion")
    private Integer idAccion;
    @Column(name = "fecha_recepcion")
    @Temporal(TemporalType.TIMESTAMP)
    private Date fechaRecepcion;
    @Column(name = "cod_ope1")
    private String codOpe1;
    @Column(name = "cod_ope2")
    private String codOpe2;
    @Column(name = "cod_supervisor")
    private String codSupervisor;
    @Column(name = "lectura_medidor")
    private String lecturaMedidor;
    @Column(name = "fecha_ejecucion")
    @Temporal(TemporalType.TIMESTAMP)
    private Date fechaEjecucion;
    @Column(name = "observacion_resultado")
    private String observacionResultado;
    @Column(name = "cod_tipo_accion")
    private Integer codTipoAccion;
    @Column(name = "cod_area")
    private String codArea;
    @Column(name = "log_user")
    private String logUser;
    @Column(name = "nro_papeleta")
    private String nroPapeleta;
    @Column(name = "serie_m")
    private String serieM;
    @Column(name = "marca_m")
    private String marcaM;
    @Column(name = "diam_m")
    private String diamM;
    @Column(name = "num_m")
    private String numM;
    @JoinColumn(name = "id_accion", referencedColumnName = "id_accion", insertable = false, updatable = false)
    @OneToOne(optional = false)
    private TbAccion tbAccion;
    @JoinColumn(name = "cod_tipo_ejecucion", referencedColumnName = "cod_tipo_ejecucion")
    @ManyToOne
    private TbTipoEjecucion codTipoEjecucion;
    @JoinColumn(name = "cod_tipo_observacion", referencedColumnName = "cod_tipo_observacion")
    @ManyToOne
    private TbTipoObservacion codTipoObservacion;

    public TbResultado() {
    }

    public TbResultado(Integer idAccion) {
        this.idAccion = idAccion;
    }

    public Integer getIdAccion() {
        return idAccion;
    }

    public void setIdAccion(Integer idAccion) {
        this.idAccion = idAccion;
    }

    public Date getFechaRecepcion() {
        return fechaRecepcion;
    }

    public void setFechaRecepcion(Date fechaRecepcion) {
        this.fechaRecepcion = fechaRecepcion;
    }

    public String getCodOpe1() {
        return codOpe1;
    }

    public void setCodOpe1(String codOpe1) {
        this.codOpe1 = codOpe1;
    }

    public String getCodOpe2() {
        return codOpe2;
    }

    public void setCodOpe2(String codOpe2) {
        this.codOpe2 = codOpe2;
    }

    public String getCodSupervisor() {
        return codSupervisor;
    }

    public void setCodSupervisor(String codSupervisor) {
        this.codSupervisor = codSupervisor;
    }

    public String getLecturaMedidor() {
        return lecturaMedidor;
    }

    public void setLecturaMedidor(String lecturaMedidor) {
        this.lecturaMedidor = lecturaMedidor;
    }

    public Date getFechaEjecucion() {
        return fechaEjecucion;
    }

    public void setFechaEjecucion(Date fechaEjecucion) {
        this.fechaEjecucion = fechaEjecucion;
    }

    public String getObservacionResultado() {
        return observacionResultado;
    }

    public void setObservacionResultado(String observacionResultado) {
        this.observacionResultado = observacionResultado;
    }

    public Integer getCodTipoAccion() {
        return codTipoAccion;
    }

    public void setCodTipoAccion(Integer codTipoAccion) {
        this.codTipoAccion = codTipoAccion;
    }

    public String getCodArea() {
        return codArea;
    }

    public void setCodArea(String codArea) {
        this.codArea = codArea;
    }

    public String getLogUser() {
        return logUser;
    }

    public void setLogUser(String logUser) {
        this.logUser = logUser;
    }

    public String getNroPapeleta() {
        return nroPapeleta;
    }

    public void setNroPapeleta(String nroPapeleta) {
        this.nroPapeleta = nroPapeleta;
    }

    public String getSerieM() {
        return serieM;
    }

    public void setSerieM(String serieM) {
        this.serieM = serieM;
    }

    public String getMarcaM() {
        return marcaM;
    }

    public void setMarcaM(String marcaM) {
        this.marcaM = marcaM;
    }

    public String getDiamM() {
        return diamM;
    }

    public void setDiamM(String diamM) {
        this.diamM = diamM;
    }

    public String getNumM() {
        return numM;
    }

    public void setNumM(String numM) {
        this.numM = numM;
    }

    public TbAccion getTbAccion() {
        return tbAccion;
    }

    public void setTbAccion(TbAccion tbAccion) {
        this.tbAccion = tbAccion;
    }

    public TbTipoEjecucion getCodTipoEjecucion() {
        return codTipoEjecucion;
    }

    public void setCodTipoEjecucion(TbTipoEjecucion codTipoEjecucion) {
        this.codTipoEjecucion = codTipoEjecucion;
    }

    public TbTipoObservacion getCodTipoObservacion() {
        return codTipoObservacion;
    }

    public void setCodTipoObservacion(TbTipoObservacion codTipoObservacion) {
        this.codTipoObservacion = codTipoObservacion;
    }

    @Override
    public int hashCode() {
        int hash = 0;
        hash += (idAccion != null ? idAccion.hashCode() : 0);
        return hash;
    }

    @Override
    public boolean equals(Object object) {
        // TODO: Warning - this method won't work in the case the id fields are not set
        if (!(object instanceof TbResultado)) {
            return false;
        }
        TbResultado other = (TbResultado) object;
        if ((this.idAccion == null && other.idAccion != null) || (this.idAccion != null && !this.idAccion.equals(other.idAccion))) {
            return false;
        }
        return true;
    }

    @Override
    public String toString() {
        return "controlacciones.ejb3.entity.TbResultado[idAccion=" + idAccion + "]";
    }

}
